1. Field of the Invention
The present invention relates to Local Area Network (LAN) communications systems in general and, in particular, to devices which allow network entities to process information in a first format or protocol and transfer the information in different formats or protocols.
2. Prior Art
The use of LAN communications systems for interconnecting Data Terminal Equipment (DTE), such as computers, word processors, printers, file servers, etc., are well known in the prior art. The most popular LAN communications systems used to interconnect DTEs probably includes Token Ring, Ethernet and Asynchronous Transfer Mode (ATM). These networks have different characteristics and it is desirable to have programs and/or other data structure designs for one type of network to be compatible with the others.
One area of incompatibility is in the size of the data block. The Token Ring and Ethernet networks are deemed to be packet oriented networks. The size of the data packets varies from a minimum value to a maximum value. In contrast, the ATM network uses a fixed size data entity called a cell. The ATM cell size is usually fifty-three (53) bytes. Of the 53 bytes, 48 are used for data and the other five bytes are used for virtual routing information.
It appears as if the number of installed Token Ring and/or Ethernet networks are much greater than the number of installed ATM networks. As a consequence, a large number of application programs structure data in a packet size compatible with the Token Ring and/or Ethernet packet size. In order for ATM to compete successfully with Ethernet and/or Token Ring as a desktop technology, a low cost device for segmenting packet size frames is required. The present invention provides such a low cost device.
In order to transmit over an ATM link, user data structured in accordance with Ethernet and/or Token Ring packet size, each unit of user data is segmented into a plurality of ATM cells. Prior to segmentation, a Trailer Data Field and a 32-bit CRC are concatenated to the user data. The user data, Trailer and 32-bit CRC form an ATM packet which is segmented in ATM cells and transmitted over the ATM link. This method of handling data is fully described in the ATM Adaption Layer-5 (AAL-5). The AAL-5 is well documented in ATM literature and further description is not warranted.
One of the consequences of segmentation is that multiple streams of ATM cells each associated with different ATM packets will often be interleaved. One approach is to use an hardware design. The hardware required to decode and associate each ATM cell with its respective stream and maintain multiple CRC calculation (one for each stream) is complex and expensive. Another approach to calculating the CRC (termed "Packet CRC") associated with an ATM packet is to use the system software. The approach has several drawbacks including considerable performance penalty. In particular, to calculate Packet CRC for ATM packets entirely with system software requires an extremely large amount of system CPU cycles.
In view of the above, an efficient and low cost system for calculating Packet CRC is required.